/** @jsxImportSource @emotion/react */
import * as React from "react";
import {BlobInputList, Text,} from "customize-easy-ui-component";
import {InspectRecordLayout, InternalItemProps, useItemInputControl,} from "../common/base";
import {useMeasureInpFilter} from "../common/hooks";

//可以复用的组件： 尽量抽象 和 提高代码复用程度！
interface Props  extends InternalItemProps{
    label?: string;
    nos?: string;
    titles?: any[];    //可能是Node[]，不一定纯粹string;  可变的多个标题编码的。
    zjuse?: number;     //最末尾的注释的文本使用那一段话？可选择办法的。
    config?: any[];    //有配置模式的 : 表对象的默认取值；
    datalist?: string[];        //输入的列表
}

export const itemA技术见证=['大备注'];
const default见证: never[]=[];
const default记事=[{nm:'检验意见通知书'},];
/**通用见证材料3项的： 只剩下了一个： 六、备注；
 * */
export const WitnessAmusM=
    React.forwardRef((
        { children, show ,alone=true,redId,nestMd,label,datalist}:Props,  ref
    ) => {
        const defvcbFunc = React.useCallback((par: any) => {
            const { 见证表,记事表 }=par||{};
            if(!见证表 || 见证表.length<1)   par.见证表=default见证;
            if(!(记事表?.length>=1))   par.记事表=default记事;
            return  par;
        }, []);
        const [getInpFilter]=useMeasureInpFilter(null,itemA技术见证,defvcbFunc);
        const {inp, setInp} = useItemInputControl({ ref });
        //原报告： 有bz1 bz3两个字段？ 正式报告用的
        return <InspectRecordLayout inp={inp} setInp={setInp} getInpFilter={getInpFilter} show={show} redId={redId}
                                    nestMd={nestMd}
                                    alone={alone} label={label!}>
            {(children as any[])?.[0]}
            <hr/>
            <Text variant="h5">
              {label}
            </Text>
            <BlobInputList  value={inp?.大备注 ||''} rows={7} onListChange={v => setInp({...inp,大备注:v || undefined}) }
                            datalist={datalist}
            />
            {(children as any[])?.[1]}
        </InspectRecordLayout>;
    });

